package com.ruoyi.common.entity.TransactionEntity.VO;

import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

import java.math.BigDecimal;

public class SkuVO extends BaseEntity {

    /** SKU ID */
    private Long id;

    /** 所属商品SPU ID */
    private Long spuId;
    /** 商品SPU 的名字 */
    private String spuName;

    // 商品所属种类id
    private Long categoryId;

    // 所属种类名称
    private String categoryName;

    /** 规格信息（JSON格式，如{"容量":"500ml","包装":"瓶装"}） */

    private String spec;

    /** 商品条形码（用于扫码销售） */

    private String barcode;

    /** 销售价格（单位：元） */

    private BigDecimal price;

    /** 商品成本价（用于利润分析） */

    private BigDecimal costPrice;

    /** 商品展示图URL */

    private String imageUrl;

    /** 是否上架（0-下架，1-上架） */

    private String isActive;

    /** 删除标志（0-未删除，1-已删除） */
    private String delFlag;
    // 增加字段

    private String brandName; // 品牌名称，如：伊利、金龙鱼
    private String unit; //  商品单位，如瓶、袋、箱
    private String description; //  商品描述

    public SkuVO() {
    }

    public SkuVO(Long id, Long spuId, String spuName, Long categoryId, String categoryName, String spec, String barcode, BigDecimal price, BigDecimal costPrice, String imageUrl, String isActive, String delFlag, String brandName, String unit, String description) {
        this.id = id;
        this.spuId = spuId;
        this.spuName = spuName;
        this.categoryId = categoryId;
        this.categoryName = categoryName;
        this.spec = spec;
        this.barcode = barcode;
        this.price = price;
        this.costPrice = costPrice;
        this.imageUrl = imageUrl;
        this.isActive = isActive;
        this.delFlag = delFlag;
        this.brandName = brandName;
        this.unit = unit;
        this.description = description;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getSpuId() {
        return spuId;
    }

    public void setSpuId(Long spuId) {
        this.spuId = spuId;
    }

    public String getSpuName() {
        return spuName;
    }

    public void setSpuName(String spuName) {
        this.spuName = spuName;
    }

    public Long getCategoryId() {
        return categoryId;
    }

    public void setCategoryId(Long categoryId) {
        this.categoryId = categoryId;
    }

    public String getCategoryName() {
        return categoryName;
    }

    public void setCategoryName(String categoryName) {
        this.categoryName = categoryName;
    }

    public String getSpec() {
        return spec;
    }

    public void setSpec(String spec) {
        this.spec = spec;
    }

    public String getBarcode() {
        return barcode;
    }

    public void setBarcode(String barcode) {
        this.barcode = barcode;
    }

    public BigDecimal getPrice() {
        return price;
    }

    public void setPrice(BigDecimal price) {
        this.price = price;
    }

    public BigDecimal getCostPrice() {
        return costPrice;
    }

    public void setCostPrice(BigDecimal costPrice) {
        this.costPrice = costPrice;
    }

    public String getImageUrl() {
        return imageUrl;
    }

    public void setImageUrl(String imageUrl) {
        this.imageUrl = imageUrl;
    }

    public String getIsActive() {
        return isActive;
    }

    public void setIsActive(String isActive) {
        this.isActive = isActive;
    }

    public String getDelFlag() {
        return delFlag;
    }

    public void setDelFlag(String delFlag) {
        this.delFlag = delFlag;
    }

    public String getBrandName() {
        return brandName;
    }

    public void setBrandName(String brandName) {
        this.brandName = brandName;
    }

    public String getUnit() {
        return unit;
    }

    public void setUnit(String unit) {
        this.unit = unit;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }
}
